package net.sk.china.city.talk.request.city;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import net.sk.china.city.talk.constants.RegularConstants;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.*;
import java.io.Serializable;

/**
 * 更新分站超管 Request
 * +----------------------------------------------------------------------
 * | Talk To [ 聊来改善地区金融服务环境，助力企业发展 ]
 * +----------------------------------------------------------------------
 * | Copyright (c) 2018-2024 聊来All rights reserved.
 * +----------------------------------------------------------------------
 * | Licensed ( <a href="http://www.apache.org/licenses/LICENSE-2.0">apache</a> )
 * +----------------------------------------------------------------------
 * | @Author: 聊来 <18970881148@qq.com>
 * +----------------------------------------------------------------------
 * | DateTime: 2024/6/11 19:28
 * +----------------------------------------------------------------------
 */

@Data
public class CityUpdateRequest implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "数据ID", required = true)
    @NotNull(message = "数据ID不能为空")
    private Integer id;

    @ApiModelProperty(value = "分站超管账号", required = true)
    @NotBlank(message = "分站超管账号不能为空")
    @Length(max = 32, message = "分站超管账号长度不能超过32个字符")
    private String account;

    @ApiModelProperty(value = "分站名称", required = true)
    @NotBlank(message = "分站名称不能为空")
    private String name;

    @ApiModelProperty(value = "手机号", required = true)
    @NotBlank(message = "手机号不能为空")
    @Pattern(regexp = RegularConstants.PHONE_TWO, message = "请填写正确的手机号")
    private String phone;

    @ApiModelProperty(value = "分站超管姓名", required = true)
    @NotBlank(message = "分站超管姓名不能为空")
    @Length(max = 16, message = "分站超管姓名长度不能超过16个字符")
    private String realName;

    @ApiModelProperty(value = "分站超管状态 1有效0无效", required = true)
    @NotNull(message = "status 字段不能为空")
    private Boolean status;

    @ApiModelProperty(value = "城市ID", required = true)
    @NotNull(message = "请选择城市ID")
    private Integer cityId;

    @ApiModelProperty(value = "账号是否独立 0：否 1：是", required = true)
    @NotNull(message = "independent 字段不能为空")
    @Range(min = 0, max = 1, message = "independent未知的状态")
    private Integer independent;

    @ApiModelProperty(value = "微信小程序配置")
    private String wxProgram = "";

    @ApiModelProperty(value = "微信支付配置")
    private String wxPay = "";

}
